<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <title>{{ system_name }} Login</title>
  <link rel="shortcut icon" href="/static/favicon.ico">
  <!-- 引入 layui.css -->
  <link rel="stylesheet" href="/static/layui/css/layui.css">
  <style>
      .main-body {top:50%;left:50%;position:absolute;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%);overflow:hidden;}
      .login-main .login-bottom .center .item input {display:inline-block;width:227px;height:22px;padding:0;position:absolute;border:0;outline:0;font-size:14px;letter-spacing:0;}

      .login-main .login-bottom .tip .icon-nocheck {display:inline-block;width:10px;height:10px;border-radius:2px;border:solid 1px #9abcda;position:relative;top:2px;margin:1px 8px 1px 1px;cursor:pointer;}
      .login-main .login-bottom .center .item .icon {display:inline-block;width:33px;height:22px;}
      .login-main .login-bottom .center .item {width:388px;height:48px;border-bottom:1px solid #dae1e6;margin-bottom:48px;}
      .login-main {width:428px;position:relative;float:left;}
      .login-main .login-top {height:117px;background-color:#148be4;border-radius:12px 12px 0 0;font-family:SourceHanSansCN-Regular;font-size:30px;font-weight:400;font-stretch:normal;letter-spacing:0;color:#fff;line-height:117px;text-align:center;overflow:hidden;-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0);}
      .login-main .login-top .bg1 {display:inline-block;width:74px;height:74px;background:#fff;opacity:.1;border-radius:0 74px 0 0;position:absolute;left:0;top:43px;}
      .login-main .login-top .bg2 {display:inline-block;width:94px;height:94px;background:#fff;opacity:.1;border-radius:50%;position:absolute;right:-16px;top:-16px;}
      .login-main .login-bottom {width:428px;background:#fff;border-radius:0 0 12px 12px;padding-bottom:53px;}
      .login-main .login-bottom .center {width:388px;margin:0 auto;padding-top:40px;padding-bottom:15px;position:relative;}
      .login-main .login-bottom .tip {clear:both;height:16px;line-height:16px;width:388px;margin:0 auto;}
      input::-webkit-input-placeholder {color:#a6aebf;}
      input::-moz-placeholder {/* Mozilla Firefox 19+ */            color:#a6aebf;}
      input:-moz-placeholder {/* Mozilla Firefox 4 to 18 */            color:#a6aebf;}
      input:-ms-input-placeholder {/* Internet Explorer 10-11 */            color:#a6aebf;}
      input:-webkit-autofill {/* 取消Chrome记住密码的背景颜色 */            -webkit-box-shadow:0 0 0 1000px white inset !important;}
      html {height:100%;}
      .login-main .login-bottom .tip {clear:both;height:16px;line-height:16px;width:388px;margin:0 auto;}
      .login-main .login-bottom .tip .login-tip {font-family:MicrosoftYaHei;font-size:12px;font-weight:400;font-stretch:normal;letter-spacing:0;color:#9abcda;cursor:pointer;}
      .login-main .login-bottom .tip .forget-password {font-stretch:normal;letter-spacing:0;color:#1391ff;text-decoration:none;position:absolute;right:62px;}
      .login-main .login-bottom .login-btn {width:388px;height:40px;background-color:#1E9FFF;border-radius:16px;margin:24px auto 0;text-align:center;line-height:40px;color:#fff;font-size:14px;letter-spacing:0;cursor:pointer;border:none;}
      .login-main .login-bottom .center .item .validateImg {position:absolute;right:1px;cursor:pointer;height:36px;border:1px solid #e6e6e6;}
      .footer {left:0;bottom:0;color:#fff;width:100%;position:absolute;text-align:center;line-height:30px;padding-bottom:10px;text-shadow:#000 0.1em 0.1em 0.1em;font-size:14px;}
      .padding-5 {padding:5px !important;}
      .footer a,.footer span {color:#fff;}
      @media screen and (max-width:428px) {.login-main {width:360px !important;}
          .login-main .login-top {width:360px !important;}
          .login-main .login-bottom {width:360px !important;}
      }
  </style>
</head>
<body>
<div class="main-body">
    <div class="login-main">
        <div class="login-top">
            <span>Welcome back {{ system_name }}!</span>
            <span class="bg1"></span>
            <span class="bg2"></span>
        </div>
        <form class="layui-form login-bottom">
            <input type="hidden" name="csrf_token" value="{{ csrf_token }}">
            <div class="center">
                <div class="item">
                    Account
                    <span class="icon icon-2"></span>
                    <input type="tel" name="account" lay-verify="required|phone" autocomplete="off" class="layui-input" value="">
                </div>

                <div class="item">
                    Password
                    <span class="icon icon-3"></span>
                    <input type="password" name="pwd" lay-verify="pass" placeholder="请输入密码" autocomplete="off" class="layui-input" value="">
                    <span class="bind-password icon icon-4"></span>
                </div>

                <div id="validatePanel" class="item">
                    Captcha
                    <span class="icon"></span>
                    <input type="text" name="captcha" placeholder="请输入验证码" maxlength="5"  style="width: 88px;">
                    <a href="javascript: ;">
                    <img id="captcha" src="/adm/passport/captcha" style="width: 158px; float: right; margin-top: -24px;" />
                    </a>
                </div>

            </div>
            <div class="tip" style="display: none;">
                <span class="icon-nocheck"></span>
                <span class="login-tip">保持登录</span>
                <a href="javascript:" class="forget-password">忘记密码？</a>
            </div>
            <div class="layui-form-item" style="text-align:center; width:100%;height:100%;margin:0px;">
                <button class="login-btn" lay-submit="" lay-filter="login">立即登录</button>
            </div>
        </form>
    </div>
</div>
</body>
</html>

<!-- https://github.com/layui/layui/tags -->
<!-- 引入 layui.js -->
<script src="/static/layui/layui.js" charset="utf-8"></script>

<script src="/static/js/jsencrypt.js" charset="utf-8"></script>
<script src="/static/js/md5.min.js" charset="utf-8"></script>
<script type="text/javascript">
var public_key = "{{public_key}}";
public_key = public_key.substr(26, public_key.length - 24 - 26)
// console.log('public_key ', public_key)
//layui绑定扩展
layui.config({
    base: '/static/js/'
})
layui.use(['jquery', 'layer', 'form'], function(){
    var layer = layui.layer ,form = layui.form;
    var $ = layui.$

    $("#captcha").click(function(){
        $(this).attr('src', '/adm/passport/captcha?r=' + Math.random());
    });

    // 表单验证
    form.verify({
        account : [/[A-Za-z0-9\u4e00-\u9fa5]{2,40}$/, '用户名必须2到40位字母、数字、汉字组合'],
        password : [/(.+){8,40}$/, '8到40个任意字符'],
        number : [/^[0-9]*$/, '必须输入数字啊']
    })
    form.on('submit(login)', function(obj){
        layer.msg('数据提交中...',{time:50000})

        // Encrypt with the public key...
        var encrypt = new JSEncrypt()
        encrypt.setPublicKey(public_key)
        obj.field.pwd = encrypt.encrypt(md5(obj.field.pwd))

        var post_data = obj.field
        $.ajax({
            type: "POST",
            url: "/adm/passport/login",
            data: post_data,
            headers: {},
            success: function(res) {
                // console.log("res: ", res)
                if (res && res.code==0) {
                    var exp = new Date()
                    document.cookie = "back_uri=''; expires=" + exp.toGMTString()+ "; path=/"
                    document.cookie = "captcha_key=''; expires=" + exp.toGMTString()+ "; path=/"
                    location.href = res.payload.next ? res.payload.next : '/adm/'
                } else if(res && res.msg) {
                    layer.msg(res.msg)
                    $(":input[name='account']").focus()
                } else {
                    layer.msg('未知错误')
                    // setTimeout(function(){
                    //     location.reload()
                    // }, 3000)
                }
            },
            error: function(xhr) {
                console.log('xhr: ', xhr.responseJSON)
                if (xhr.responseJSON && xhr.responseJSON.msg) {
                    layer.msg(xhr.responseJSON.msg)
                } else {
                    layer.msg('未知错误')
                }
            }
        })
        return false; // 阻止默认 form 跳转
    })
});

</script>
